An electronic control unit, such as a fuel injection controller for example, includes multiple devices such as a microcomputer and an IC for example, and performs communication processing between a first device and a second device to implement various operations. When the multiple devices carry out data communication by start-stop synchronization communication, a recovery process of recovering a receiver is performed in case of a parity error, a framing error, etc. In the recovery process for example, the receiver is placed in a reception-prohibited state and a reception buffer is initialized.
Patent Document 1: JP-3-270334A
Because the first device cannot recognize the timing of completing the recovery of the second device, there is a possibility that at a time of completing the recovery of the second device, a transmitter of the first device is in data transmission. In this case, the receiver of the second device may wrongly recognize that a bit in the middle of the data transmitted from the transmitter of the first device is a start bit. This is detected as a communication error. In this case, the second device may perform the recovery process once again, and repeat the recovery process again and again, and hang up.
For addressing this difficulty, a technology described in Patent Document 1 places a detector, which detects a character indicating a data beginning, in a waiting state, and prohibits a receiver from detecting an error and forwarding a received data to a memory until the detector completes a recovery process and detects a character indicating a beginning of next received data.
However, according to studies by the inventor of the present application, the above technology premises that a character indicating a beginning of a received data is added to a communication data. The above technology is not suitable for a start-stop synchronization communication, in which a start bit indicates a beginning of data. Moreover, a technology described in Patent Document 1 requires the character detection and thus requires, for example, dedicated hardware or software.